/*
 * Zadanie 3 5
 *
 * Do rozwiązania tego zadania wykorzystaj klasę string (oczywiście w języku C++).
 * Łańcuch znaków jest przechowywany w obiekcie klasy string. Napisz funkcję:
 *
 * void deleteChars(string inputText, string inputChars);
 *
 * która pobierze dwa łańcuchy znaków (oczywiście jako obiekt klasy string) i z pierwszego
 * łańcucha inputText usunie wszystkie znaki, które są w drugim łańcuchu inputChars.
 * Wykorzystaj możliwości klasy string opisanej tutaj: http://www.cplusplus.com/reference/string/string/
 * Postaraj się rozwiązać to jak najprostszym sposobem.
 *
 * Version: $Id: main.cpp 55 2011-11-14 21:47:50Z s8376@pjwstk.edu.pl $
 */

#include <iostream>

using namespace std;

void deleteChars(string inputText, string inputChars);

int main(void)
{
    //    string ciagZnakow = "Lorem ipsum dolor sit amet enim. Etiam ullamcorper.";
    //    string litery = "iemp";

    string ciagZnakow = "aaabbbcccdddeee";
    string litery = "xbd";

    cout << "Ciag znakow: " << ciagZnakow << endl << "Litery: " << litery
            << endl;

    deleteChars(ciagZnakow, litery);
}

void deleteChars(string inputText, string inputChars)
{
    int lenght = inputChars.length();
    for (int i = 0; i < lenght; i++) {
        while (inputText.find(inputChars.at(i)) != -1) {
            inputText = inputText.erase(inputText.find(inputChars[i]), sizeof(char));
        }
    }

    cout << "Wynik: " << inputText << endl;
}
